home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 21 / AACD 21.iso / AACD / Programming / amigatalk / general / Char.st < prev    next >
Encoding:
Text File  |  2001-02-28  |  2.0 KB  |  99 lines

  1. Class Char :Magnitude
  2. [
  3.    == aChar
  4.       ^ <primitive 6 self aChar>
  5.          ifTrue:  [<primitive 46 self aChar>]
  6.          ifFalse: [false]
  7. |   
  8.    < aChar
  9.       ^ <primitive 6 self aChar>
  10.          ifTrue:  [<primitive 42 self aChar>]
  11.          ifFalse: [self compareError]
  12. |
  13.    = aChar
  14.       ^ <primitive 6 self aChar>
  15.          ifTrue:  [<primitive 46 self aChar>]
  16.          ifFalse: [self compareError]
  17. |   
  18.    > aChar
  19.       ^ <primitive 6 self aChar>
  20.          ifTrue:  [<primitive 43 self aChar>]
  21.          ifFalse: [self compareError]
  22. |
  23.    asciiValue
  24.       ^ <primitive 59 self>
  25. |
  26.    value
  27.       ^ <primitive 59 self>
  28. |  
  29.    asLowercase
  30.       ^ <primitive 54 self>
  31.          ifTrue:  [<primitive 57 self>]
  32.          ifFalse: [self]
  33. |
  34.    asUppercase
  35.       ^ <primitive 53 self>
  36.          ifTrue:  [<primitive 57 self>]
  37.          ifFalse: [self]
  38. |
  39.    lowerCase
  40.       ^ <primitive 54 self>
  41.          ifTrue:  [<primitive 57 self>]
  42.          ifFalse: [self]
  43. |
  44.    upperCase
  45.       ^ <primitive 53 self>
  46.          ifTrue:  [<primitive 57 self>]
  47.          ifFalse: [self]
  48. |
  49.    asString
  50.       ^ <primitive 58 self>
  51. |
  52.    compareError
  53.       ^ self error: 'char cannot be compared to non char'
  54. |
  55.    digitValue      ! i !
  56.       ((i <- <primitive 50 self>) isNil)
  57.          ifTrue: [self error: 'digitValue on nondigit char'].
  58.       ^ i
  59. |
  60.    isAlphaNumeric
  61.       ^ <primitive 56 self>
  62. |
  63.    isDigit
  64.       ^ self between: $0 and: $9
  65. |
  66.    isLetter
  67.       ^ self isLowercase or: [self isUppercase]
  68. |
  69.    isAlphabetic
  70.       ^ self isLowercase or: [self isUppercase]
  71. |
  72.    isLowercase
  73.       ^ self between: $a and: $z 
  74. |
  75.    isSeparator
  76.       ^ <primitive 55 self>
  77. |
  78.    isUppercase
  79.       ^ (self between: $A and: $Z)
  80. |
  81.    isVowel
  82.       ^ <primitive 51 self>
  83. |
  84.    isBlank      "space, tab or newline is a Blank space:"
  85.       ^ (self = 32 or:[ self = 9 or: [ self = 10 ] ])
  86. |
  87.    printString
  88.       ^ '$' , <primitive 58 self>
  89. |
  90.    print 
  91.       ^ <primitive 58 self>
  92. |
  93.    new: value
  94.       ^ (self in: (self new) at: 1 put: value)
  95. |
  96.    newline
  97.       ^ (self new: 10)
  98. ]
  99.